/* Copyright 2009
 *
 * This program and the accompanying materials
 * are made available under the terms of the
 * Eclipse Public License v1.0 which accompanies
 * this distribution, and is available at
 *
 * 		http://www.eclipse.org/legal/epl-v10.html
 *
 * Unless required by applicable law or agreed to in
 * writing, software distributed under the License is
 * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
 * OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing
 * permissions and limitations under the License.
 *
 * Contributors:
 * 	   IBM Corporation - initial API and implementation for JDT/DLTK
 *     Sean W. Quinn - initial adoption for use with PHP from various sources.
 */
package org.eclipse.php.internal.formatter;

import org.eclipse.dltk.ui.CodeFormatterConstants;

/**
 * @author Sean W. Quinn (swquinn@gmail.com)
 */
public class PHPFormatterConstants {
  public static final String FORMATTER_TAB_CHAR = CodeFormatterConstants.FORMATTER_TAB_CHAR;
  public static final String FORMATTER_TAB_SIZE = CodeFormatterConstants.FORMATTER_TAB_SIZE;
  public static final String FORMATTER_INDENTATION_SIZE = CodeFormatterConstants.FORMATTER_INDENTATION_SIZE;

  public static final String FORMATTER_PROFILES = "formatter.profiles"; //$NON-NLS-1$
  public static final String FORMATTER_ACTIVE_PROFILE = "formatter.profiles.active"; //$NON-NLS-1$

  /**
   * <pre>
   * FORMATTER / Option to use tabulations for indentation and spaces for line wrapping
   *     - option id:         "org.eclipse.php.formatter.use_tabs_only_for_leading_indentations"
   *     - possible values:   { TRUE, FALSE }
   *     - default:           FALSE
   * </pre>
   * @see #TRUE
   * @see #FALSE
   * @since 3.1
   */
  public static final String FORMATTER_USE_TABS_ONLY_FOR_LEADING_INDENTATIONS = PHPFormatterPlugin.PLUGIN_ID + ".use_tabs_only_for_leading_indentations"; //$NON-NLS-1$

  public static final String INDENT_CLASS = "indent.class"; //$NON-NLS-1$
  public static final String INDENT_MODULE = "indent.module"; //$NON-NLS-1$
  public static final String INDENT_METHOD = "indent.method"; //$NON-NLS-1$
  public static final String INDENT_BLOCKS = "indent.blocks"; //$NON-NLS-1$
  public static final String INDENT_IF = "indent.if"; //$NON-NLS-1$
  public static final String INDENT_CASE = "indent.case"; //$NON-NLS-1$
  public static final String INDENT_WHEN = "indent.when"; //$NON-NLS-1$

  public static final String LINES_FILE_AFTER_REQUIRE = "line.file.require.after"; //$NON-NLS-1$

  public static final String LINES_FILE_BETWEEN_MODULE = "line.file.module.between"; //$NON-NLS-1$
  public static final String LINES_FILE_BETWEEN_CLASS = "line.file.class.between"; //$NON-NLS-1$
  public static final String LINES_FILE_BETWEEN_METHOD = "line.file.method.between"; //$NON-NLS-1$

  public static final String LINES_BEFORE_FIRST = "line.first.before"; //$NON-NLS-1$
  public static final String LINES_BEFORE_MODULE = "line.module.before"; //$NON-NLS-1$
  public static final String LINES_BEFORE_CLASS = "line.class.before"; //$NON-NLS-1$
  public static final String LINES_BEFORE_METHOD = "line.method.before"; //$NON-NLS-1$

  public static final String LINES_PRESERVE = "lines.preserve"; //$NON-NLS-1$

  public static final String WRAP_COMMENTS = "wrap.comments"; //$NON-NLS-1$
  public static final String WRAP_COMMENTS_LENGTH = "wrap.comments.length"; //$NON-NLS-1$













  // ***************************************************************************
  // LEGACY?????

  /**
   * Configurable option value: {@value}.
   * @since 2.0
   * @category OptionValue
   */
  public static final String INSERT = "insert"; //$NON-NLS-1$

  /**
   * Configurable option value: {@value}.
   * @since 2.0
   * @category OptionValue
   */
  public static final String DO_NOT_INSERT = "do not insert"; //$NON-NLS-1$

  /**
   * Configurable option value: {@value}.
   * @since 2.0
   * @category OptionValue
   */
  public static final String TAB = "tab"; //$NON-NLS-1$

  /**
   * Configurable option value: {@value}.
   * @since 2.0
   * @category OptionValue
   */
  public static final String SPACE = "space"; //$NON-NLS-1$
}
